Distributed Generalized Dynamic Barrier Synchronization
نویسندگان
چکیده
Barrier synchronization is widely used in shared-memory parallel programs to synchronize between phases of data-parallel algorithms. With proliferation of many-core processors, barrier synchronization has been adapted for higher level language abstractions in new languages such as X10 wherein the processes participating in barrier synchronization are not known a priori, and the processes in distinct “places” don’t share memory. Thus, the challenge here is to not only achieve barrier synchronization in a distributed setting without any centralized controller, but also to deal with dynamic nature of such a synchronization as processes are free to join and drop out at any synchronization phase. In this paper, we describe a solution for the generalized distributed barrier synchronization wherein processes can dynamically join or drop out of barrier synchronization; that is, participating processes are not known a priori. Using the policy of permitting a process to join only in the beginning of each phase, we arrive at a solution that ensures (i) Progress: a process executing phase k will enter phase k + 1 unless it wants to drop out of synchronization (assuming the phase execution of the processes terminate), and (ii) Starvation Freedom: a new process that wants to join a phase synchronization group that has already started, does so in a finite number of phases. The correctness of the solution is formally established. From the perspective of a global observer, our protocol guarantees a bound of at most two phases from the phase a process had registered it’s intention to join. We show how the testing by each of the processes with all the other processes can be short circuited leading to efficient synchronization. The above protocol is further generalized to multiple groups of processes (possibly non-disjoint) engaged in barrier synchronization.
منابع مشابه
Synchronization for Complex Dynamic Networks with State and Coupling Time-Delays
This paper is concerned with the problem of synchronization for complex dynamic networks with state and coupling time-delays. Therefore, larger class and more complicated complex dynamic networks can be considered for the synchronization problem. Based on the Lyapunov-Krasovskii functional, a delay-independent criterion is obtained and formulated in the form of linear matrix inequalities (LMIs)...
متن کاملSynchronization analysis of complex dynamical networks with hybrid coupling with application to Chua’s circuit
Complex dynamic networks have been considered by researchers for their applications in modeling and analyzing many engineering issues. These networks are composed of interconnected nodes and exhibit complex behaviors that are resulted from interactions between these nodes. Synchronization, which is the concept of coordinated behavior between nodes, is the most interested behavior in these netwo...
متن کاملa Simplified Model of Distributed Parameter Systems
A generalized simplified model for describing the dynamic behavior of distributed parameter systems is proposed. The various specific characteristics of gain and phase angle of distributed parameter systems are investigated from frequency response formulation and complex plane representation of the proposed simplified model. The complex plane investigation renders some important inequality cons...
متن کاملCapability Classes of Barrier Synchronization Techniques
Performance metrics and evaluation criteria are used to develop a novel taxonomy which classifies barrier mechanisms into categories ranging from simple Static-Binding Idle-Tasking (SBIT) methods to robust Dynamic-Binding Any-Tasking (DBAT) methods. Such capabilities include support for multiple barriers, reconfigurable and reusable synchronization resources, and provisions for dynamic process...
متن کاملVerification of Static and Dynamic Barrier Synchronization Using Bounded Permissions
Mainstream languages such as C/C++ (with Pthreads), Java, and .NET provide programmers with both static and dynamic barriers for synchronizing concurrent threads in fork/join programs. However, such barrier synchronization in fork/join programs is hard to verify since programmers must not only keep track of the dynamic number of participating threads, but also ensure that all participants proce...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2011